function name is shorter and the function parameters are less. Well, I often do this, and make some very simple encapsulation for some trivial (many others should think so) Beautiful code or simplified calling.
Key points are as follows:
1. Two member variables are provided to save the path and segment name of the configuration file, so that the published read/write interface does not have to carry these two parameters. At least for most of my applets, the two data items are unique.
2. Pr
The Cprofile parser can be used to calculate the entire run time of a program, and it can calculate the run time of each function separately, and tell you how many times this function is calleddef foo ():PassImport cprofilecprofile.run ('foo ()')or use the command line.Python-m CProfile myscript.pyPython-m cprofile-o result. myscript.py #把结果输出到result. OutPytho
The Python standard library provides three modules for analyzing program performance, Cprofile, profile and hotshot, plus an auxiliary module stats. These modules provide deterministic analysis of Python programs, as well as a report generation tool that allows users to quickly check and analyze resultsCProfile: Based on the Lsprof C language implementation of the extended application, the operating cost is reasonable, suitable for the analysis of lon
http://blog.csdn.net/gzlaiyonghao/article/details/1483728Collect a great God's introduction to this question. I will not do more pollution. There are also two enhanced libraries that can be used to generate a graph analysis of the. prof file for Cprofile output.One is Snakeviz one is Gprof2dot the second figure generates something very cool ... But it's not the first one to be practical.In the process of using both, there is actually a custom report m
Python comes with several performance Analysis modules: Profile, Cprofile, and Hotshot, all of which are basically the same way, nothing more than a pure Python or C-written module. This article describes cprofile.ExampleImport Time def func1 (): = 0 for in range (1000000): + = idef Func2 (): time.sleep (ten) func1 () Func2 ()Rundel. pyRun resultsResults analysisPerformed 6 functions, which cost a total of 10.138s, sorted by the na
#ifndef _profile_h_
#define _profile_h_
/**
* Read and write INI file classes
*/
Class CProfile
{
Public
CProfile ();
~cprofile ();
Set INI file name
VOID setprofile (LPCTSTR szininame);
Public
A string that holds the INI file name
TCHAR M_szininame[max_path];
Takes the value of type float in the INI file
Float GetFloat (lpctstr szsection, lpctstr
Python script Performance Analysis#################### Python script Performance Analysis###################CProfile/profile/hotshot is used to collect statistics on the execution frequency and time consumption of each part of the Python script. pstats can be used to format the statistics.CProfile is a C extension with low overhead. It is suitable for analyzing long-running Python programs. This module is recommended.Profile, pure Python module, with
In this article, I'll discuss a tool for analyzing CPU usage in Python. CPU analysis measures the performance of the code by analyzing how the CPU executes the code to find the irregularities in the code and then process them.Next we'll look at how to track the CPU usage of the Python script, focusing on the following areas:1, CProfile2, Line_profiler3, Pprofile4, VprofMeasuring CPU UsageFor this article, I will use the same script as the one used in memory analysis, as follows:Also, keep in min
consumes 0.79sCPU time and 0.18 seconds for kernel function execution. The total time is 0.977s.Total time-(user time + system time) = the time consumed when the input and output and other tasks are executed by the system
Python timeit module
It can be used for benchmark, so that you can easily repeat the number of times a program is executed and check that the program can run multiple blocks. For more information, see the previous article.
CProfile
####################Python脚本性能剖析###################Cprofile/profile/hotshot is used to count statistics such as how often each part of a Python script runs and how long it takes. Pstats can be used to format this informationCProfile is a C extension. Low overhead, suitable for parsing long-executed Python programs, recommended for use with this moduleProfile Pure Python module, there is significant overhead, but want to extend the relatively easyHotsh
####################Python脚本性能剖析###################Cprofile/profile/hotshot is used to count statistics on the frequency and time of execution of each part of a Python script, pstats can be used to format this informationCProfile, which is a C extension, has a small overhead and is suitable for profiling a long-running Python program, recommended for use with this moduleProfile, a pure Python module, has significant overhead, but it's relatively easy
relevant manual.Python 2.5 ConsiderationsBecause hotshot cannot be used for multi-threading, and its advantages are only at speed, the Python 2.5 version declares that the Hotshot module is no longer maintained and may be removed in a later release. There must be, instead of cprofile, and Cpickle and other modules similar to the Cprofile than the profile module faster. The
Paip. performance tracking profile principles and architecture and essence python scanning with javaphp paip. performance tracking profile principles and architecture and nature-python scanning with java php
# Background
Get all input method phonetic alphabet conversion atiEnPH tool, always python performance on K, 7 k Records browsing K takes 30 minutes.
# Goals
When analyzing the performance of a program, it all comes down to answering four basic questions:
How fast is the program runnin
A = Range (10000)
%timeit-n [I for I in a if i = = True]
%timeit-n [I for I in a if I am true]
loo PS, Best of 3:531µs per loop
loops, Best of 3:362µs per loop
Use if is true to be nearly one times faster than if = = True .
Using cascading comparisons x
X, y, z = 1,2,3
%timeit-n 1000000 if x
1000000 loops, best 3:101 ns/loop
1000000 loops, Best of 3:121 ns per loop
x efficiency is slightly higher and readability is better.
While 1 is faster than while True
Def while_1 ():
loopUsing a,b=b,a instead c=a;a=b;b=c; of exchanging a A, a, a, a, can be 1 time times faster.
Use if isa = range(10000)%timeit -n 100 [i for i in a if i == True]%timeit -n 100 [i for i in a if i is True]100 loops, best of 3: 531 μs per loop100 loops, best of 3: 362 μs per loopUse if is True it if == True nearly one times faster.
Using cascading comparisons x x, y, z = 1,2,3%timeit -n 1000000 if x x The efficiency is slightly higher, and the readability is better.
while 1 while True fa
, best of 3: 16.9 ns per loop
** It is faster than 10 times!
15. Use cProfile, cStringIO, and cPickle to implement the same functions(Corresponding to profile, StringIO, and pickle respectively) packages
import cPickleimport picklea = range(10000)%timeit -n 100 x = cPickle.dumps(a)%timeit -n 100 x = pickle.dumps(a)100 loops, best of 3: 1.58 ms per loop100 loops, best of 3: 17 ms per loop
Packages implemented by c are faster than 10 times!
16. Use the
Profile Analysis of python program and pythonprofile Analysis
Operating System: CentOS7.3.1611 _ x64
Python version: 2.7.5
Problem description
1. The program developed by Python is very slow to use. I want to determine which code segment is relatively slow;
2. The program developed by Python occupies a large amount of memory during use and wants to determine which code segment is causing it;
Solution
Use profile to analyze cpu usage
Profile Introduction: https://docs.python.org/2/library/profile
. Use if is UseIf is Truethanif = = Truenearly as fast as a fold. 12. Using cascading comparisons x x the efficiency is slightly higher, and the readability is better. 13.while 1 faster than while Truewhile 1 is much faster than while true because in python2.x, true is a global variable, not a keyword. 14. Use * * instead of POW**is faster than 10 times times! 15. Use CProfile, Cstringio and cpickle to achieve the same function with C (respectively, c
0.977 Total
The above results illustrate: The execution script consumes 0.79sCPU time, 0.18 seconds to execute the kernel function consumption time, a total of 0.977s time.Where total time-(User Time + system time) = consumed at input and output and when the system performs other tasks
Python Timeit module
Can be used to do benchmark, you can easily repeat the number of execution of a program to see how many blocks the program can run. Refer to the previously written article.
Python native interpreter really slows down execution in that case.In addition to the Timeit modules used above in Ipython, there are cprofile. CProfile is also very simple to use: Python–m cProfile filename.py,filename.py is the file name to run the program, you can see in the standard output the number of times each function was called and the time it ran, to
The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion;
products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the
content of the page makes you feel confusing, please write us an email, we will handle the problem
within 5 days after receiving your email.
If you find any instances of plagiarism from the community, please send an email to:
info-contact@alibabacloud.com
and provide relevant evidence. A staff member will contact you within 5 working days.